package com.zkzx.wlhy.adaptor.clinet.bestSign;


import com.zkzx.common.driver.param.DriverInvitationParam;
import com.zkzx.common.driver.param.DriverThreeElementsParam;
import com.zkzx.wlhy.adaptor.clinet.ResultVO;
import com.zkzx.wlhy.adaptor.config.feign.FeignConfiguration;
import com.zkzx.wlhy.adaptor.controller.driver.vo.WlhyDriverContractStatusVO;
import com.zkzx.wlhy.adaptor.controller.driver.vo.WlhyDriverInvitationVO;
import com.zkzx.wlhy.adaptor.controller.driver.vo.WlhyDriverThreeElementsVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;


import javax.validation.Valid;

/**
 * 北京中科智兴物联科技有限公司 @版权所有
 *
 * @Author: zhaoyihe@zkraising.com
 * @Date: 2021/05/19/19:17
 * @Description:
 */
@FeignClient(name = "WLHY-BestSign",url = "${wh.website}",configuration = FeignConfiguration.class)
public interface BestSignClient {

    @PostMapping("/v3/contract/electronicContract/getDriverIdentityCode")
    ResultVO<WlhyDriverThreeElementsVO> getIdentityKey(@RequestBody @Valid DriverThreeElementsParam driverThreeElementsParam);


    @PostMapping("/v3/contract/electronicContract/driverSignInvitation")
    ResultVO<WlhyDriverInvitationVO> getContractSign(@RequestBody @Valid DriverInvitationParam driverInvitationParam);

    @GetMapping("/v3/contract/electronicContract/getSignerStatus")
    ResultVO getContractStatus(@RequestParam("contractId") String contractId);

}
